package database;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;

import java.util.ArrayList;
import java.util.List;

import jsonbean.Quliaty;

/**
 * Created by Lxh on 2017/12/29.
 */

public class sqliteUtil {
    private static SqliteHelper sqliteHelper = null;
    private static SQLiteDatabase db;
    private static SQLiteDatabase rdb;

    public sqliteUtil(Context context) {
        sqliteHelper = new SqliteHelper(context);
        db = sqliteHelper.getWritableDatabase();
        rdb = sqliteHelper.getReadableDatabase();
    }

    public static List<Quliaty> query() {
        String sql = "select * from quality order by id desc limit 0,20";
        List<Quliaty> list = new ArrayList<>();
        Cursor cursor = rdb.rawQuery(sql, null);
        Quliaty quliaty = null;
        while (cursor.moveToNext()) {
            quliaty = new Quliaty();
            quliaty.setPm(cursor.getInt(cursor.getColumnIndex("pm")));
            quliaty.setTemp(cursor.getInt(cursor.getColumnIndex("temp")));
            quliaty.setLightIntensity(cursor.getInt(cursor.getColumnIndex("light")));
            quliaty.setHumidity(cursor.getInt(cursor.getColumnIndex("humidity")));
            quliaty.setCo2(cursor.getInt(cursor.getColumnIndex("co")));
            list.add(quliaty);
        }
        return list;
    }


    public static long insert(List<Quliaty> list) {
        Log.w("Lxh", "insert: start");
        long resultNumber = 0;
        for (Quliaty quliaty : list) {
            ContentValues values = new ContentValues();
            values.put("pm", quliaty.getPm());
            values.put("co", quliaty.getCo2());
            values.put("humidity", quliaty.getHumidity());
            values.put("light", quliaty.getLightIntensity());
            values.put("temp", quliaty.getTemp());
            resultNumber = db.insert("quality", null, values);
        }
        Log.w("LXh", "insert: 影响的行数： " + resultNumber);
        return resultNumber;
    }


}
